#ifndef __BUOLA_CV_BOXES_BATTENTION_H__
#define __BUOLA_CV_BOXES_BATTENTION_H__

#include <blackbox/bases/bsyncbox.h>
#include <buola/cv/cattention.h>
#include <blackbox/cdataout.h>
#include <blackbox/cdatain.h>
#include <buola/image/format.h>

//necessary guarantees:
//- OnInput is only called if all inputs contain valid data
//- no input can change while OnInput is being executed

namespace buola { namespace cvi {

class BAttention : public blackbox::BSyncBox
{
public:
    BAttention();
    ~BAttention();
    
protected:
    virtual void OnClock();

public:
    blackbox::CDataIn<img::CImage_rgb8> iImage;
    blackbox::CDataOut<img::CImage_gray8> oMap;

private:
    CAttention mAttention;
};

/*namespace cvi*/ } /*namespace buola*/ }

#endif
